package com.sprouting.personal.config;

import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.beans.factory.config.BeanPostProcessor;
import org.springframework.context.annotation.Configuration;

import javax.annotation.PostConstruct;

/**
 * 记录项目启动 打印版本号与编译时间
 * @author tianma
 * @date 2021/12/1 15:14
 */
@Configuration
@Slf4j
public class BeanPostConfig implements BeanPostProcessor {

    /**
     * 当前版本
     */
    @Value("${app.version}")
    private String serviceVersion;
    /**
     * 打包时间
     */
    @Value("${app.build.time}")
    private String serviceBuildDate;


    /**
     * 打印版本号与编译时间
     */
    @PostConstruct
    public void projectInfo(){
        String projectInfo = "\n================= 项目启动中 =================\n" +
                String.format("\n 【应用版本】%s\n", serviceVersion) +
                String.format("\n 【应用构建时间】 %s\n", serviceBuildDate) +
                "\n================= 项目启动中 =================\n";
        log.info(projectInfo);
    }
}
